package zhongbo.java.air.dictionary.service;

import zhongbo.java.air.common.vo.PageVo;
import zhongbo.java.air.dictionary.model.AirPort;

/**
 * 说明：
 *
 * @author 钟波dellNotebook
 * @since 2025年04月01日 星期二 07:33:42
 */
public interface IAirPortService<T extends AirPort> {

    /**
     * 添加
     *
     * @param entity 实体信息
     * @return 添加结果
     */
    T add(T entity);

    /**
     * 删除
     *
     * @param entityId entityId
     * @return 删除结果
     */
    String delete(String entityId);

    /**
     * 修改
     *
     * @param edit 修改实体
     * @return 结果
     */
    T edit(T edit);

    /**
     * 查询一条
     *
     * @param entityId 查询 entityId
     * @return 结果
     */
    T findOne(String entityId);

    /**
     * 分页查询用户列表
     * 如果传了entityName, 使用entityName进行模糊查找
     *
     * @param page        分页页码
     * @param pageSize    分页大小
     * @param keyword     模糊搜索关键字
     * @param fields      要模糊搜索的字段(多个用英文逗号","隔开)
     * @param oderByField 按某个字段排序
     * @param orderByAsc  是否正序排序(默认倒序)
     * @return 结果
     */
    PageVo<T> findPage(Integer page, Integer pageSize, String keyword, String fields, String oderByField, Boolean orderByAsc);

}
